<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SdFat: ArduinoSdFat/libraries/SdFat/src/SdFatConfig.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">SdFat
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_bd3b508a448b79faa7486a2af0c5c4a2.html">ArduinoSdFat</a></li><li class="navelem"><a class="el" href="dir_d7cdc5eb6907b67ec8d6facf0ac28083.html">libraries</a></li><li class="navelem"><a class="el" href="dir_30f4e013e11264f0426cd7e4f10b230b.html">SdFat</a></li><li class="navelem"><a class="el" href="dir_ffa9b8a1695a52c2b9469cb7873a40f4.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a>  </div>
  <div class="headertitle">
<div class="title">SdFatConfig.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>configuration definitions  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;stdint.h&gt;</code><br />
<code>#include &quot;Arduino.h&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for SdFatConfig.h:</div>
<div class="dyncontent">
<div class="center"><img src="_sd_fat_config_8h__incl.png" border="0" usemap="#_arduino_sd_fat_2libraries_2_sd_fat_2src_2_sd_fat_config_8h" alt=""/></div>
<map name="_arduino_sd_fat_2libraries_2_sd_fat_2src_2_sd_fat_config_8h" id="_arduino_sd_fat_2libraries_2_sd_fat_2src_2_sd_fat_config_8h">
<area shape="rect" title="configuration definitions" alt="" coords="5,5,175,47"/>
<area shape="rect" title=" " alt="" coords="9,95,75,121"/>
<area shape="rect" title=" " alt="" coords="99,95,177,121"/>
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="_sd_fat_config_8h__dep__incl.png" border="0" usemap="#_arduino_sd_fat_2libraries_2_sd_fat_2src_2_sd_fat_config_8hdep" alt=""/></div>
<map name="_arduino_sd_fat_2libraries_2_sd_fat_2src_2_sd_fat_config_8hdep" id="_arduino_sd_fat_2libraries_2_sd_fat_2src_2_sd_fat_config_8hdep">
<area shape="rect" title="configuration definitions" alt="" coords="847,5,1017,47"/>
<area shape="rect" href="_sys_call_8h.html" title="SysCall class." alt="" coords="452,102,649,143"/>
<area shape="rect" href="_block_device_interface_8h.html" title="BlockDeviceInterface include file." alt="" coords="709,95,921,151"/>
<area shape="rect" href="_fat_lib_config_8h.html" title="configuration definitions" alt="" coords="945,102,1156,143"/>
<area shape="rect" href="_arduino_stream_8h.html" title="ArduinoInStream and ArduinoOutStream classes." alt="" coords="1182,102,1421,143"/>
<area shape="rect" href="_minimum_serial_8h.html" title="Minimal AVR Serial driver." alt="" coords="5,199,189,240"/>
<area shape="rect" href="_sd_fat_8h.html" title="main SdFs include file." alt="" coords="214,199,365,240"/>
<area shape="rect" href="_sd_spi_card_8h.html" title="SdSpiCard class for V2 SD/SDHC cards." alt="" coords="374,288,581,329"/>
<area shape="rect" href="_sd_spi_driver_8h.html" title="SpiDriver classes." alt="" coords="441,199,661,240"/>
<area shape="rect" href="_ex_fat_partition_8h.html" title="ExFatPartition include file." alt="" coords="685,199,923,240"/>
<area shape="rect" href="_fat_partition_8h.html" title="FatPartition class." alt="" coords="947,199,1152,240"/>
<area shape="rect" href="_ex_fat_file_8h.html" title="ExFatFile class." alt="" coords="699,288,909,329"/>
<area shape="rect" href="_fat_volume_8h.html" title="FatVolume class." alt="" coords="1011,377,1213,419"/>
<area shape="rect" href="_fat_file_8h.html" title="FatFile class." alt="" coords="1087,288,1265,329"/>
<area shape="rect" href="sdios_8h.html" title="C++ IO Streams features." alt="" coords="1227,199,1378,240"/>
</map>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a63747c9ac4e3d78579690cf9eb38c4df"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a63747c9ac4e3d78579690cf9eb38c4df">CHECK_FLASH_PROGRAMMING</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:a63747c9ac4e3d78579690cf9eb38c4df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a2b1ca4d91cff876f48deeaacbc33da"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a9a2b1ca4d91cff876f48deeaacbc33da">DESTRUCTOR_CLOSES_FILE</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a9a2b1ca4d91cff876f48deeaacbc33da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a8c1ea8596f35f7f33a24b642567206"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a9a8c1ea8596f35f7f33a24b642567206">ENABLE_ARDUINO_FEATURES</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:a9a8c1ea8596f35f7f33a24b642567206"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0a95c918e41f5cb3850231fc41fdcd0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#aa0a95c918e41f5cb3850231fc41fdcd0">ENABLE_ARDUINO_SERIAL</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:aa0a95c918e41f5cb3850231fc41fdcd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae353ccb45df7772d8022763a57410d9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#aae353ccb45df7772d8022763a57410d9">ENABLE_ARDUINO_STRING</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:aae353ccb45df7772d8022763a57410d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ceb23f14263a17c56eac40e484cbbbb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a3ceb23f14263a17c56eac40e484cbbbb">ENABLE_DEDICATED_SPI</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:a3ceb23f14263a17c56eac40e484cbbbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a270eefdaec4778f2a491658f34f61b17"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a270eefdaec4778f2a491658f34f61b17">ENDL_CALLS_FLUSH</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a270eefdaec4778f2a491658f34f61b17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28998c5daf4bd038f4f93172698320b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a28998c5daf4bd038f4f93172698320b1">FAT12_SUPPORT</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a28998c5daf4bd038f4f93172698320b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a356309f8e0bad852d7a07ad0b9326a27"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a356309f8e0bad852d7a07ad0b9326a27">HAS_SDIO_CLASS</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a356309f8e0bad852d7a07ad0b9326a27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cc6c9647297d65f8e823de70740630b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a7cc6c9647297d65f8e823de70740630b">INCLUDE_SDIOS</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a7cc6c9647297d65f8e823de70740630b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2865dac8fdbb4fff47105db32ddf05b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#ac2865dac8fdbb4fff47105db32ddf05b">MAINTAIN_FREE_CLUSTER_COUNT</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:ac2865dac8fdbb4fff47105db32ddf05b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab81c0135853c34b24c8314849950f6ab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#ab81c0135853c34b24c8314849950f6ab">SD_CHIP_SELECT_MODE</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:ab81c0135853c34b24c8314849950f6ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a838861a01379e94361148d22e62b1977"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a838861a01379e94361148d22e62b1977">SD_HAS_CUSTOM_SPI</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a838861a01379e94361148d22e62b1977"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb969469c422c2da5438963623bdfbd3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#adb969469c422c2da5438963623bdfbd3">SD_MAX_INIT_RATE_KHZ</a>&#160;&#160;&#160;400</td></tr>
<tr class="separator:adb969469c422c2da5438963623bdfbd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdbec9ae1f12e4154878ac10672103fb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#acdbec9ae1f12e4154878ac10672103fb">SDFAT_FILE_TYPE</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:acdbec9ae1f12e4154878ac10672103fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6761799c8dffafbf5b7dd914772be28c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a6761799c8dffafbf5b7dd914772be28c">SPI_DRIVER_SELECT</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a6761799c8dffafbf5b7dd914772be28c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae92cc0fb2a31925cfc5694feb048dca2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#ae92cc0fb2a31925cfc5694feb048dca2">USE_BLOCK_DEVICE_INTERFACE</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:ae92cc0fb2a31925cfc5694feb048dca2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d3fca2607182c1ba389dd61c283a3e2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a8d3fca2607182c1ba389dd61c283a3e2">USE_EXFAT_BITMAP_CACHE</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a8d3fca2607182c1ba389dd61c283a3e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad42a354208ecb245adfc238266a612e5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#ad42a354208ecb245adfc238266a612e5">USE_FAT_FILE_FLAG_CONTIGUOUS</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:ad42a354208ecb245adfc238266a612e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4b7255422e65730612f1f6af1a26752"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#ab4b7255422e65730612f1f6af1a26752">USE_FCNTL_H</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:ab4b7255422e65730612f1f6af1a26752"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2536b194b3b007604a39e8526e108b52"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a2536b194b3b007604a39e8526e108b52">USE_LONG_FILE_NAMES</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:a2536b194b3b007604a39e8526e108b52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae477a983188d4370faff32b07a5cfacb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#ae477a983188d4370faff32b07a5cfacb">USE_MULTI_SECTOR_IO</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:ae477a983188d4370faff32b07a5cfacb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2e76ffb2fdb830175abf513dd640fdd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#af2e76ffb2fdb830175abf513dd640fdd">USE_SD_CRC</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:af2e76ffb2fdb830175abf513dd640fdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23f662882413dcb017ebd8107473b8c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a23f662882413dcb017ebd8107473b8c3">USE_SEPARATE_FAT_CACHE</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a23f662882413dcb017ebd8107473b8c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d4fac424e31b4383a10211f0489d93b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a9d4fac424e31b4383a10211f0489d93b">USE_SIMPLE_LITTLE_ENDIAN</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:a9d4fac424e31b4383a10211f0489d93b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03b3cad4ee9ca6915330f41b2924bca1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a03b3cad4ee9ca6915330f41b2924bca1">WDT_YIELD_TIME_MILLIS</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a03b3cad4ee9ca6915330f41b2924bca1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a7a489fb14a59adf251794342604fc5ea"><td class="memItemLeft" align="right" valign="top">typedef uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_sd_fat_config_8h.html#a7a489fb14a59adf251794342604fc5ea">SdCsPin_t</a></td></tr>
<tr class="separator:a7a489fb14a59adf251794342604fc5ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>configuration definitions </p>
<p>Copyright (c) 2011-2019 Bill Greiman This file is part of the SdFat library for SD memory cards.</p>
<p>MIT License</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a63747c9ac4e3d78579690cf9eb38c4df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63747c9ac4e3d78579690cf9eb38c4df">&#9670;&nbsp;</a></span>CHECK_FLASH_PROGRAMMING</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CHECK_FLASH_PROGRAMMING&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>If CHECK_FLASH_PROGRAMMING is zero, overlap of single sector flash programming and other operations will be allowed for faster write performance.</p>
<p>Some cards will not sleep in low power mode unless CHECK_FLASH_PROGRAMMING is non-zero. </p>

</div>
</div>
<a id="a9a2b1ca4d91cff876f48deeaacbc33da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a2b1ca4d91cff876f48deeaacbc33da">&#9670;&nbsp;</a></span>DESTRUCTOR_CLOSES_FILE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DESTRUCTOR_CLOSES_FILE&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set DESTRUCTOR_CLOSES_FILE nonzero to close a file in its destructor.</p>
<p>Causes use of lots of heap in ARM. </p>

</div>
</div>
<a id="a9a8c1ea8596f35f7f33a24b642567206"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a8c1ea8596f35f7f33a24b642567206">&#9670;&nbsp;</a></span>ENABLE_ARDUINO_FEATURES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ENABLE_ARDUINO_FEATURES&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>For Debug - must be one </p>

</div>
</div>
<a id="aa0a95c918e41f5cb3850231fc41fdcd0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0a95c918e41f5cb3850231fc41fdcd0">&#9670;&nbsp;</a></span>ENABLE_ARDUINO_SERIAL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ENABLE_ARDUINO_SERIAL&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>For Debug - must be one </p>

</div>
</div>
<a id="aae353ccb45df7772d8022763a57410d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae353ccb45df7772d8022763a57410d9">&#9670;&nbsp;</a></span>ENABLE_ARDUINO_STRING</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ENABLE_ARDUINO_STRING&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>For Debug - must be one </p>

</div>
</div>
<a id="a3ceb23f14263a17c56eac40e484cbbbb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ceb23f14263a17c56eac40e484cbbbb">&#9670;&nbsp;</a></span>ENABLE_DEDICATED_SPI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ENABLE_DEDICATED_SPI&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set ENABLE_DEDICATED_SPI to enable dedicated use of the SPI bus. Selecting dedicated SPI in <a class="el" href="class_sd_spi_config.html" title="SPI card configuration.">SdSpiConfig()</a> will produce better performance by using very large multi-block transfers to and from the SD card.</p>
<p>Enabling dedicated SPI will cost some extra flash and RAM. </p>

</div>
</div>
<a id="a270eefdaec4778f2a491658f34f61b17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a270eefdaec4778f2a491658f34f61b17">&#9670;&nbsp;</a></span>ENDL_CALLS_FLUSH</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ENDL_CALLS_FLUSH&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Call flush for endl if ENDL_CALLS_FLUSH is nonzero</p>
<p>The standard for iostreams is to call flush. This is very costly for SdFat. Each call to flush causes 2048 bytes of I/O to the SD.</p>
<p>SdFat has a single 512 byte buffer for SD I/O so it must write the current data sector to the SD, read the directory sector from the SD, update the directory entry, write the directory sector to the SD and read the data sector back into the buffer.</p>
<p>The SD flash memory controller is not designed for this many rewrites so performance may be reduced by more than a factor of 100.</p>
<p>If ENDL_CALLS_FLUSH is zero, you must call flush and/or close to force all data to be written to the SD. </p>

</div>
</div>
<a id="a28998c5daf4bd038f4f93172698320b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28998c5daf4bd038f4f93172698320b1">&#9670;&nbsp;</a></span>FAT12_SUPPORT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define FAT12_SUPPORT&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set FAT12_SUPPORT nonzero to enable use if FAT12 volumes. FAT12 has not been well tested and requires additional flash. </p>

</div>
</div>
<a id="a356309f8e0bad852d7a07ad0b9326a27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a356309f8e0bad852d7a07ad0b9326a27">&#9670;&nbsp;</a></span>HAS_SDIO_CLASS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define HAS_SDIO_CLASS&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Default is no SDIO. </p>

</div>
</div>
<a id="a7cc6c9647297d65f8e823de70740630b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7cc6c9647297d65f8e823de70740630b">&#9670;&nbsp;</a></span>INCLUDE_SDIOS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define INCLUDE_SDIOS&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set INCLUDE_SDIOS nonzero to include <a class="el" href="sdios_8h.html" title="C++ IO Streams features.">sdios.h</a> in <a class="el" href="_sd_fat_8h.html" title="main SdFs include file.">SdFat.h</a>. <a class="el" href="sdios_8h.html" title="C++ IO Streams features.">sdios.h</a> provides C++ style IO Streams. </p>

</div>
</div>
<a id="ac2865dac8fdbb4fff47105db32ddf05b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2865dac8fdbb4fff47105db32ddf05b">&#9670;&nbsp;</a></span>MAINTAIN_FREE_CLUSTER_COUNT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAINTAIN_FREE_CLUSTER_COUNT&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set MAINTAIN_FREE_CLUSTER_COUNT nonzero to keep the count of free clusters updated. This will increase the speed of the freeClusterCount() call after the first call. Extra flash will be required. </p>

</div>
</div>
<a id="ab81c0135853c34b24c8314849950f6ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab81c0135853c34b24c8314849950f6ab">&#9670;&nbsp;</a></span>SD_CHIP_SELECT_MODE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SD_CHIP_SELECT_MODE&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>SD_CHIP_SELECT_MODE defines how the functions void <a class="el" href="_sd_spi_driver_8h.html#ad4854101780daaa378827ecb62ef86d9">sdCsInit(SdCsPin_t pin)</a> {pinMode(pin, OUTPUT);} and void <a class="el" href="_sd_spi_driver_8h.html#ac469bbe2d31ffde9b00ffc68258d7428">sdCsWrite(SdCsPin_t pin, bool level)</a> {digitalWrite(pin, level);} are defined.</p>
<p>0 - Internal definition is a strong symbol and can't be replaced.</p>
<p>1 - Internal definition is a weak symbol and can be replaced.</p>
<p>2 - No internal definition and must be defined in the application. </p>

</div>
</div>
<a id="a838861a01379e94361148d22e62b1977"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a838861a01379e94361148d22e62b1977">&#9670;&nbsp;</a></span>SD_HAS_CUSTOM_SPI</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SD_HAS_CUSTOM_SPI&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Enable SDIO driver if available. Determine the default SPI configuration. </p>

</div>
</div>
<a id="adb969469c422c2da5438963623bdfbd3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb969469c422c2da5438963623bdfbd3">&#9670;&nbsp;</a></span>SD_MAX_INIT_RATE_KHZ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SD_MAX_INIT_RATE_KHZ&#160;&#160;&#160;400</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>SD maximum initialization clock rate. </p>

</div>
</div>
<a id="acdbec9ae1f12e4154878ac10672103fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acdbec9ae1f12e4154878ac10672103fb">&#9670;&nbsp;</a></span>SDFAT_FILE_TYPE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SDFAT_FILE_TYPE&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>File types for SdFat, File, <a class="el" href="class_sd_file.html" title="FAT16/FAT32 file with Print.">SdFile</a>, SdBaseFile, fstream, ifstream, and ofstream.</p>
<p>Set SDFAT_FILE_TYPE to:</p>
<p>1 for FAT16/FAT32, 2 for exFAT, 3 for FAT16/FAT32 and exFAT. </p>

</div>
</div>
<a id="a6761799c8dffafbf5b7dd914772be28c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6761799c8dffafbf5b7dd914772be28c">&#9670;&nbsp;</a></span>SPI_DRIVER_SELECT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SPI_DRIVER_SELECT&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>If the symbol SPI_DRIVER_SELECT is:</p>
<p>0 - An optimized custom SPI driver is used if it exists else the standard library driver is used.</p>
<p>1 - The standard library driver is always used.</p>
<p>2 - The software SPI driver is always used.</p>
<p>3 - Experimental external SPI driver hook. </p>

</div>
</div>
<a id="ae92cc0fb2a31925cfc5694feb048dca2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae92cc0fb2a31925cfc5694feb048dca2">&#9670;&nbsp;</a></span>USE_BLOCK_DEVICE_INTERFACE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_BLOCK_DEVICE_INTERFACE&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set USE_BLOCK_DEVICE_INTERFACE nonzero to use generic of block device </p>

</div>
</div>
<a id="a8d3fca2607182c1ba389dd61c283a3e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d3fca2607182c1ba389dd61c283a3e2">&#9670;&nbsp;</a></span>USE_EXFAT_BITMAP_CACHE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_EXFAT_BITMAP_CACHE&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set USE_EXFAT_BITMAP_CACHE nonzero to use a second 512 byte cache for exFAT bitmap entries. This improves performance for large writes that are not a multiple of 512 bytes. </p>

</div>
</div>
<a id="ad42a354208ecb245adfc238266a612e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad42a354208ecb245adfc238266a612e5">&#9670;&nbsp;</a></span>USE_FAT_FILE_FLAG_CONTIGUOUS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_FAT_FILE_FLAG_CONTIGUOUS&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Optimize access to contiguous files. Experimental - set nonzero to enable. </p>

</div>
</div>
<a id="ab4b7255422e65730612f1f6af1a26752"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4b7255422e65730612f1f6af1a26752">&#9670;&nbsp;</a></span>USE_FCNTL_H</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_FCNTL_H&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>If the symbol USE_FCNTL_H is nonzero, open flags for access modes O_RDONLY, O_WRONLY, O_RDWR and the open modifiers O_APPEND, O_CREAT, O_EXCL, O_SYNC will be defined by including the system file fcntl.h. </p>

</div>
</div>
<a id="a2536b194b3b007604a39e8526e108b52"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2536b194b3b007604a39e8526e108b52">&#9670;&nbsp;</a></span>USE_LONG_FILE_NAMES</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_LONG_FILE_NAMES&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set USE_LONG_FILE_NAMES nonzero to use long file names (LFN) in FAT16/FAT32. exFAT always uses long file names.</p>
<p>Long File Name are limited to a maximum length of 255 characters.</p>
<p>This implementation allows 7-bit characters in the range 0X20 to 0X7E except the following characters are not allowed:</p>
<p>&lt; (less than) </p><blockquote class="doxtable">
<p>(greater than) </p>
</blockquote>
<p>: (colon) " (double quote) / (forward slash) \ (backslash) | (vertical bar or pipe) ? (question mark)</p><ul>
<li>(asterisk) </li>
</ul>

</div>
</div>
<a id="ae477a983188d4370faff32b07a5cfacb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae477a983188d4370faff32b07a5cfacb">&#9670;&nbsp;</a></span>USE_MULTI_SECTOR_IO</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_MULTI_SECTOR_IO&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set USE_MULTI_SECTOR_IO nonzero to use multi-sector SD read/write.</p>
<p>Don't use mult-sector read/write on small AVR boards. </p>

</div>
</div>
<a id="af2e76ffb2fdb830175abf513dd640fdd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2e76ffb2fdb830175abf513dd640fdd">&#9670;&nbsp;</a></span>USE_SD_CRC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_SD_CRC&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>To enable SD card CRC checking for SPI, set USE_SD_CRC nonzero.</p>
<p>Set USE_SD_CRC to 1 to use a smaller CRC-CCITT function. This function is slower for AVR but may be fast for ARM and other processors.</p>
<p>Set USE_SD_CRC to 2 to used a larger table driven CRC-CCITT function. This function is faster for AVR but may be slower for ARM and other processors. </p>

</div>
</div>
<a id="a23f662882413dcb017ebd8107473b8c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23f662882413dcb017ebd8107473b8c3">&#9670;&nbsp;</a></span>USE_SEPARATE_FAT_CACHE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_SEPARATE_FAT_CACHE&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set USE_SEPARATE_FAT_CACHE nonzero to use a second 512 byte cache for FAT16/FAT32 table entries. This improves performance for large writes that are not a multiple of 512 bytes. </p>

</div>
</div>
<a id="a9d4fac424e31b4383a10211f0489d93b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d4fac424e31b4383a10211f0489d93b">&#9670;&nbsp;</a></span>USE_SIMPLE_LITTLE_ENDIAN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USE_SIMPLE_LITTLE_ENDIAN&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set USE_SIMPLE_LITTLE_ENDIAN nonzero for little endian processors with no memory alignment restrictions. </p>

</div>
</div>
<a id="a03b3cad4ee9ca6915330f41b2924bca1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a03b3cad4ee9ca6915330f41b2924bca1">&#9670;&nbsp;</a></span>WDT_YIELD_TIME_MILLIS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WDT_YIELD_TIME_MILLIS&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Handle Watchdog Timer for WiFi modules.</p>
<p>Yield will be called before accessing the SPI bus if it has been more than WDT_YIELD_TIME_MILLIS milliseconds since the last yield call by SdFat. </p>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a7a489fb14a59adf251794342604fc5ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a489fb14a59adf251794342604fc5ea">&#9670;&nbsp;</a></span>SdCsPin_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint8_t <a class="el" href="_sd_fat_config_8h.html#a7a489fb14a59adf251794342604fc5ea">SdCsPin_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Type for card chip select pin. </p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Dec 6 2019 09:45:12 for SdFat by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.16
</small></address>
</body>
</html>
